#pragma once

#include "e2d/core/pch.h"
#include "e2d/core/Scene.h"

#include "fxcc/imgui/Editor.h"
#include "fxcc/imgui/Layer.h"

namespace e2d
{
	struct  GraphEditor :public fxcc::imgui::Layer
	{
		std::shared_ptr<e2d::Scene> m_Scene{ 0 };

		GraphEditor();

		std::vector<e2d::Entity*> m_SelectedEntities;

		void ViewFunc();
		
		void HandleFunc();

		void RenderZmo();

		bool EditTransform(const glm::mat4& proj, const glm::mat4& view, glm::mat4& world);

		bool GetMarqueeSelectionFlag() override;

		e2d::Entity* m_HoverEntity{ 0 };
		


	};

};